CONTRACT_NO_RECEIVE_SOURCE_CODE = '''
pragma solidity ^0.6.0;


contract Receive {
    string text;

    fallback() external {
        text = 'fallback';
    }

    function getText() public view returns (string memory) {
        return text;
    }

    function setText(string memory new_text) public returns (string memory) {
        return text = new_text;
    }
}

'''


CONTRACT_NO_RECEIVE_FUNCTION_ABI = '''
[
    {
        "stateMutability": "nonpayable",
        "type": "fallback"
    },
    {
        "inputs": [],
        "name": "getText",
        "outputs": [
            {
                "internalType": "string",
                "name": "",
                "type": "string"
            }
        ],
        "stateMutability": "view",
        "type": "function"
    },
    {
        "inputs": [
            {
                "internalType": "string",
                "name": "new_text",
                "type": "string"
            }
        ],
        "name": "setText",
        "outputs": [
            {
                "internalType": "string",
                "name": "",
                "type": "string"
            }
        ],
        "stateMutability": "nonpayable",
        "type": "function"
    }
]
'''


CONTRACT_NO_RECEIVE_FUNCTION_CODE = "608060405234801561001057600080fd5b50610396806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80635d3a1f9d14610068578063e00fe2eb14610183575b6040805180820190915260088082526766616c6c6261636b60c01b6020909201918252610065916000916102c8565b50005b61010e6004803603602081101561007e57600080fd5b81019060208101813564010000000081111561009957600080fd5b8201836020820111156100ab57600080fd5b803590602001918460018302840111640100000000831117156100cd57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061018b945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610148578181015183820152602001610130565b50505050905090810190601f1680156101755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61010e610231565b80516060906101a19060009060208501906102c8565b805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156102255780601f106101fa57610100808354040283529160200191610225565b820191906000526020600020905b81548152906001019060200180831161020857829003601f168201915b50505050509050919050565b60008054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156102bd5780601f10610292576101008083540402835291602001916102bd565b820191906000526020600020905b8154815290600101906020018083116102a057829003601f168201915b505050505090505b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061030957805160ff1916838001178555610336565b82800160010185558215610336579182015b8281111561033657825182559160200191906001019061031b565b50610342929150610346565b5090565b6102c591905b80821115610342576000815560010161034c56fea26469706673582212208c33db8b08eb0abda95d96bba0df24cf6356f47eb17c4f556a3427dc161852db64736f6c63430006010033"  # noqa: E501


CONTRACT_NO_RECEIVE_FUNCTION_RUNTIME = "608060405234801561001057600080fd5b50600436106100365760003560e01c80635d3a1f9d14610068578063e00fe2eb14610183575b6040805180820190915260088082526766616c6c6261636b60c01b6020909201918252610065916000916102c8565b50005b61010e6004803603602081101561007e57600080fd5b81019060208101813564010000000081111561009957600080fd5b8201836020820111156100ab57600080fd5b803590602001918460018302840111640100000000831117156100cd57600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061018b945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610148578181015183820152602001610130565b50505050905090810190601f1680156101755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61010e610231565b80516060906101a19060009060208501906102c8565b805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156102255780601f106101fa57610100808354040283529160200191610225565b820191906000526020600020905b81548152906001019060200180831161020857829003601f168201915b50505050509050919050565b60008054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156102bd5780601f10610292576101008083540402835291602001916102bd565b820191906000526020600020905b8154815290600101906020018083116102a057829003601f168201915b505050505090505b90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061030957805160ff1916838001178555610336565b82800160010185558215610336579182015b8281111561033657825182559160200191906001019061031b565b50610342929150610346565b5090565b6102c591905b80821115610342576000815560010161034c56fea26469706673582212208c33db8b08eb0abda95d96bba0df24cf6356f47eb17c4f556a3427dc161852db64736f6c63430006010033"  # noqa: E501
